package com.tangyuan.user.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.tangyuan.common.result.Result;
import com.tangyuan.common.result.ResultCodeEnum;
import com.tangyuan.common.util.iospay.AppleRequestProtocol;
import com.tangyuan.dto.GivingLiveGiftDto;
import com.tangyuan.model.NyqmCustomerTixian;
import com.tangyuan.model.TyFinance;
import com.tangyuan.model.UserBalance;

import java.util.Map;

/**
 * @Description: user_balance
 * @Author: jeecg-boot
 * @Date: 2024-03-12
 * @Version: V1.0
 */
public interface IUserBalanceService extends IService<UserBalance> {

    Result<Object> saveUserBalance(Long userId, TyFinance tyFinance);

    public Result<Object> cashUserBalance(Long userId, NyqmCustomerTixian params);

    Result<Object> iosRechargeVerify(AppleRequestProtocol receipt);

    UserBalance getUserBalance(Long userId);

    Result<ResultCodeEnum> verifyParameter(GivingLiveGiftDto givingLiveGiftDto);

    Result<Map<String, UserBalance>> giveLiveGiftUpdateBalance(GivingLiveGiftDto givingLiveGiftDto);

    Result<ResultCodeEnum> refundLiveGiftUpdateBalance(GivingLiveGiftDto givingLiveGiftDto);
}
